package com.song.springcloud;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.zuul.EnableZuulProxy;


/*
    zuul路由
        相当于一个 provider，端口 9527
        本质就是以后需要访问注册中心上的所有其他微服务时，统一访问入口，从zuul所在服务器上访问，zuul会路由到指定微服务上，从而获取结果

    访问8004服务提供者服务:
        http://localhost:8004/user/get/201722

    进化：通过统一zuul路由网关入口访问
        1.访问95227路由网关服务：
        http://127.0.0.1:9527/springcloud-provider-user/user/get/201722
        2.替换隐匿服务器ip,通过自定义域名 www.song.com 访问通过路由服务器跳转到的微服务 springcloud-provider-user：
        http://www.song.com:9527/springcloud-provider-user/user/get/201722
        3。替换隐匿路径中的微服务实例名,通过自定义路径 /myuser 访问通过路由服务器跳转到的微服务 springcloud-provider-user：（配置微服务实例对应哪个路径）
        http://www.song.com:9527/myuser/user/get/201722
        4.禁用通过微服务实例名访问（禁用1，2，配置ignored-services: "*"）:
        访问2的路径，发现访问不了，只能通过3来访问服务
        5.路径添加公共路径前缀部分(/song)：
        http://www.song.com:9527/song/myuser/user/get/201722

    最终实现：
        以后，访问微服务都通过zuul服务公共入口访问，且其他微服务的直接访问入口都关闭

 */
@SpringBootApplication
@EnableZuulProxy // 开启路由网关
public class ZuulApplication_9527 {
    public static void main(String[] args) {
        SpringApplication.run(ZuulApplication_9527.class,args);
        System.out.println("ZuulApplication_9527启动了!");
    }
}
